package com.diy.common.exception;

import com.diy.common.helper.StringUtil;

import java.util.HashMap;

/**
 * 通用Error标识Code集合
 */
public enum  ErrorCodeOfException {

    PrivateKey("search private key not", 2001), TableName("search table name not exists", 2002);

    // 成员变量
    private String desc;
    private int code;

    // 构造方法
    private ErrorCodeOfException(String name, int index) {
        this.desc = name;
        this.code = index;
    }

    //init 时候加载所有的key-value值集合
    private static HashMap<Integer,String> map=new HashMap<>();
    static {
        for (ErrorCodeOfException c : ErrorCodeOfException.values()) {
            map.put(c.getCode(),c.getDesc());
        }
    }


    // 普通方法
    public static String getName(int index) {

        String name = map.get(index);
        if (null == name || StringUtil.isEmpty(name)) {
            return null;
        }
        return name;
    }

    //获取到细节描述
    public String getDesc() {
        return desc;
    }

    //获取到返回前端的Code
    public int getCode() {
        return code;
    }
}
